/**
 * Created by liyz on 2016-07-08
 * actWeChat common.js
 */
;
(function($, win, doc, mui) {
	mui.init()
	win._comm = {};
	_comm.init = function() {
		//_comm.navs();
		_comm.header();
		var navFlag = _comm.getUrlParam("nav");
		//navFlag i：首页|o：组织|a：活动|w：福利|u：用户中心
		if("i" == navFlag || navFlag ==null){
			$("nav a").removeClass("mui-active");
			$("nav a:eq(0)").addClass("mui-active");
		}if("a" == navFlag){
			$("nav a").removeClass("mui-active");
			$("nav a:eq(1)").addClass("mui-active");
		}if("w" == navFlag){
			$("nav a").removeClass("mui-active");
			$("nav a:eq(2)").addClass("mui-active");
		}if("o" == navFlag){
			$("nav a").removeClass("mui-active");
			$("nav a:eq(3)").addClass("mui-active");
		}if("u" == navFlag){
			$("nav a").removeClass("mui-active");
			$("nav a:eq(4)").addClass("mui-active");
		}
		//所有a标签跳转
		mui("body").on("tap", "a", function() {
			var _url = $(this).attr("href");
			if(_url && _url != "javascript:;" && _url.indexOf("#") == -1)
				mui.openWindow($(this).attr("href"));
		});
		mui("body").on("tap", ".mui-control-item", function() {
			$(this).addClass("mui-active").siblings().removeClass("mui-active");
		});
	};
	//微信分享
	_comm.wxShare = function(shareUrl,titles,titleMultiUrl,describes,otherDescribes) {
		$.ajax({
			type: 'POST',
			url: config.webShareInfo,
			dataType: "json",
			data: {
				shareUrl:shareUrl
			},
			success: function(result) {
				console.log(result);
				if (result.status == '0') {
					var appId = result.data.app_id;
					var nonceStr = result.data.nonceStr;
					var signature = result.data.signature;
					var timestamp = result.data.timestamp;
					var url = result.data.url;
					var newUrl = url.split('#')[0];
					wx.config({
						debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。
						appId: appId, // 必填，公众号的唯一标识
						timestamp: timestamp, // 必填，生成签名的时间戳
						nonceStr: nonceStr, // 必填，生成签名的随机串
						signature: signature, // 必填，签名，见附录1
						jsApiList: [
								'onMenuShareTimeline',
								'onMenuShareAppMessage',
								'showOptionMenu'
							] // 必填，需要使用的JS接口列表，所有JS接口列表见附录2
					});
					wx.ready(function() {
						wx.showOptionMenu();
						var title = titles;
						var imgURL = titleMultiUrl;
						var describe =describes;
						var other_escribes =otherDescribes
						console.log(title);
						console.log(describe);
						console.log(other_escribes);
						//获取“分享到朋友圈”按钮点击状态及自定义分享内容接口
						wx.onMenuShareTimeline({
							title: other_escribes, // 分享标题
							desc: other_escribes, // 分享描述
							link: newUrl, // 	链接
							imgUrl: imgURL, // 分享图标
							success: function(data) {
								// 用户确认分享后执行的回调函数
								console.log("朋友圈分享成功");
								//执行更新分享次数函数
								console.log(config.shareCount);
								$.ajax({
									type: 'POST',
									url: config.shareCount,
									dataType: "json",
									data: {
										shareUrl:newUrl
									},
									success: function(result) {
										console.log(result);
									},
									error: function(XMLHttpRequest, textStatus, errorThrown) {
										console.log('错误!');
									}
								});
								
							},
							cancel: function(m) {
								// 用户取消分享后执行的回调函数
							},
						});
						//获取“分享给朋友”按钮点击状态及自定义分享内容接口
						wx.onMenuShareAppMessage({
							title: title, // 分享标题
							desc: describe, // 分享描述
							link:newUrl, // 	链接
							imgUrl: imgURL, // 分享图标
							type: 'link', // 分享类型,music、video或link，不填默认为link
							dataUrl: '', // 如果type是music或video，则要提供数据链接，默认为空
							success: function(data) {
								console.log('朋友分享成功');
								//执行更新分享次数函数
								console.log(config.shareCount);
								$.ajax({
									type: 'POST',
									url: config.shareCount,
									dataType: "json",
									data: {
										shareUrl:newUrl
									},
									success: function(result) {
										console.log(result);
									},
									error: function(XMLHttpRequest, textStatus, errorThrown) {
										console.log('错误!');
									}
								});
							},
							cancel: function(m) {
								// 用户取消分享后执行的回调函数
							}
						});
					});
				} else {
//					prompt(result.msg);
				}
			},
			error: function(XMLHttpRequest, textStatus, errorThrown) {
				console.log('错误!');
			}
		});
	};
	//底部导航跳转
	_comm.navs = function() {
		mui("nav").on("tap", "a", function() {
			mui.openWindow($(this).attr("href"));
		});
	};
	//头部导航跳转
	_comm.header = function() {
		//logo点击到首页
		mui("header").on("tap", ".mui-title img", function() {
			mui.openWindow(config.serverPath+"/webChat/index/toIndex");
		});
		//logo点击到个人中心
		mui("header").on("tap", ".user", function() {
			mui.openWindow(config.serverPath+"/webChat/user/toUserCenter");
		});
		//首页跳转到注册
		mui("header").on("tap", ".reg", function() {
			mui.openWindow(config.serverPath+"/webChat/user/toRegist");
		});
		//首页跳转到登录
		mui("header").on("tap", ".logon", function() {
			mui.openWindow(config.serverPath+"/webChat/user/toUserLogin");
		});
	};
	/**
	 * 自定义loading提示
	 * @param {Object} options
	 */
	_comm.loading = function(options) {
		var dft = {
			container: ".mui-content", //默认在mui-content容器中
			toggle: "show", //默认显示
			msg: "数据获取中...", //提示信息
		} || options;
		var ops = $.extend(dft, options);
		var h = '<div class="act-loading"><i class="mui-spinner"></i> ' + ops.msg + '</div>'
		$(".act-loading").remove();
		$(ops.container).append(h);
		if("show" === ops.toggle)
			$(".act-loading").show();
		if("hide" === ops.toggle)
			$(".act-loading").hide();
	};
	_comm.SENYZM_FLAG = true; //控制倒计时
	/**
	 * 发送验证码
	 * @param {Object} _this 当前点击对象（按钮）
	 */
	_comm.sendYzm = function(_this) {
		sendCode();
		var i = 179;
		if(_comm.SENYZM_FLAG) {
			_comm.SENYZM_FLAG = false;
			$(_this).attr("disabled",true);
			$(_this).css("background-color", "#bebebe");
			$(_this).html(i + "秒");
			var yzmInter = window.setInterval(function() {
				i--;
				$(_this).html(i + "秒");
				if(i === 0) {
					$(_this).attr("disabled",false);
					$(_this).css("background-color", "#25b0f8");
					$(_this).html("获取验证码");
					window.clearInterval(yzmInter);
					_comm.SENYZM_FLAG = true;
				}
			}, 1000);
		}
	};
	/**
	 * 获取url中的参数 eg:_comm.getUrlParam("id");
	 * @param {String} name
	 */
	_comm.getUrlParam = function(name) {
		var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
		var r = window.location.search.substr(1).match(reg); //匹配目标参数
		if(r != null) return unescape(r[2]);
		return null; //返回参数值
	};
	/**
	 * QQ表情处理（显示）
	 * @param {String} str
	 */
	_comm.replaceQQFace = function(str) {
		str = str.replace(/\</g, '&lt;');
		str = str.replace(/\>/g, '&gt;');
		str = str.replace(/\n/g, '<br/>');
		str = str.replace(/\[em_([0-9]*)\]/g, '<img src="../../resources/webChat/images/arclist/$1.gif" border="0" />');
		return str;
	};
	//日期格式化
	Date.prototype.format = function(format) {
		var o = {
			"M+": this.getMonth() + 1, //month
			"d+": this.getDate(), //day
			"H+": this.getHours(), //hour
			"m+": this.getMinutes(), //minute
			"s+": this.getSeconds(), //second
			"q+": Math.floor((this.getMonth() + 3) / 3), //quarter
			"S": this.getMilliseconds() //millisecond
		};
		if(/(y+)/.test(format)) {
			format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
		}
		for(var k in o) {
			if(new RegExp("(" + k + ")").test(format)) {
				format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));
			}
		}
		return format;
	};

	_comm.init();
})(jQuery, window, document, mui)

var _Act = {
	/**
	 * 初始化
	 * @param {String} flag 页面标识
	 */
	init:function(flag){
		try{
			if(flag){
				 _Act[flag].init();
			}
		}catch(e){
			//TODO handle the exception
		}
		if("org" === flag) {
			_Act.organization.init();
			_Act.organization.setHeight("m");
		}
		if("soc" === flag) {
			_Act.organization.init();
			_Act.organization.setHeight("soc");
		}
		if("org-s" === flag) {
			_Act.organization.init();
			_Act.organization.setHeight("s");
			_Act.organization.search();
		}
	},
	/**
	 * 用户登录
	 */
	login:{
		/**
		 * 初始化
		 */
		init:function(){
			_Act.login._btn();
			_Act.login.reg();
			_Act.login.fPassw();
		},
		/**
		 * 登录
		 */
		_btn:function(){
			mui("body").on("tap","#login",function(){
				var _passW = $(".phone").val();
				//手机号为空
				if(_passW.length == 0){
					mui.toast("请输入手机号！");
				}else{
					webChatLogin();
					//mui.openWindow(config.serverPath+"/webChat/index/toIndex");
				}
			});
		},
		/**
		 * 立即注册入口
		 */
		reg:function(){
			mui("body").on("tap","#reg",function(){
				mui.openWindow($(this).attr("href"));
			});
		},
		/**
		 * 忘记密码入口
		 */
		fPassw:function(){
			mui("body").on("tap","#forgetPassw",function(){
				mui.openWindow($(this).attr("href"));
			});
		}
		
	},
	/**
	 * 注册
	 */
	reg:{
		init:function(){
			_Act.reg._r();
		},
		SENYZM_FLAG:true,
		/**
		 * 确定
		 */
		_r:function(){
			mui("body").on("tap","#nextStep",function(){
				var phone = $("#tel").val();
				//手机号为空
				/*if(phone.length == 0){
					mui.toast("请输入手机号！");
				}else{*/
					registerInfo();
				/*}*/
			});
			//发送验证码
			mui("body").on("tap","#sendYzm",function(){
				sendPhone();
				
			});
			//图形验证码弹窗
			mui("body").on("tap","#getYzm",function(){
				$(".img-yzm").val('');
				checkUserLoginName();
//				if(!_Act.reg.SENYZM_FLAG)
//				mui("#getYzmModal").popover("toggle");
//				$(".img-yzm").val('');
			});
		},
		/**
		 * 发送验证码计时器
		 */
		sendYzm:function(){
			var i = 179;
			if(_Act.reg.SENYZM_FLAG) {
				_Act.reg.SENYZM_FLAG = false;
				$("#getYzm").attr("disabled",true);
				$("#getYzm").css("background-color", "#bebebe");
				$("#getYzm").html(i + "秒");
				var yzmInter = window.setInterval(function() {
					i--;
					$("#getYzm").html(i + "秒");
					if(i === 0) {
						$("#getYzm").attr("disabled",false);
						$("#getYzm").css("background-color", "#25b0f8");
						$("#getYzm").html("获取验证码");
						window.clearInterval(yzmInter);
						_Act.reg.SENYZM_FLAG = true;
					}
				}, 1000);
			}
		}
	},
	/**
	 * 第三方账号绑定手机
	 */
	bind:{
		init:function(){
			_Act.bind._r();
		},
		SENYZM_FLAG:true,
		/**
		 * 确定
		 */
		_r:function(){
			//发送验证码
			mui("body").on("tap","#sendYzm",function(){
				sendPhone();
			});
			//图形验证码弹窗
			mui("body").on("tap","#getYzm",function(){
				$(".img-yzm").val('');
				checkUserLoginName();
			});
			mui("body").on("tap","#nextStep",function(){
				/*if($("#userMobile").val()!=""){
					mui.toast("抱歉您当前已经是注册账号登录或者已经绑定过手机号码，请检查！");
					return false;
				}*/
				bind();
			});
		},
		/**
		 * 发送验证码计时器
		 */
		sendYzm:function(){
			var i = 179;
			if(_Act.reg.SENYZM_FLAG) {
				_Act.reg.SENYZM_FLAG = false;
				$("#getYzm").attr("disabled",true);
				$("#getYzm").css("background-color", "#bebebe");
				$("#getYzm").html(i + "秒");
				var yzmInter = window.setInterval(function() {
					i--;
					$("#getYzm").html(i + "秒");
					if(i === 0) {
						$("#getYzm").attr("disabled",false);
						$("#getYzm").css("background-color", "#25b0f8");
						$("#getYzm").html("获取验证码");
						window.clearInterval(yzmInter);
						_Act.reg.SENYZM_FLAG = true;
					}
				}, 1000);
			}
		}
	},
	/**
	 * 活动福利报名 绑定手机
	 */
	bindSign:{
		init:function(){
			_Act.bindSign._r();
		},
		SENYZM_FLAG:true,
		/**
		 * 确定
		 */
		_r:function(){
			//发送验证码
			mui("body").on("tap","#sendYzm",function(){
				sendPhone();
			});
			//图形验证码弹窗
			mui("body").on("tap","#getYzm",function(){
				$(".img-yzm").val('');
				checkUserLoginName();
			});
			mui("body").on("tap","#nextStep",function(){
				bindSign();
			});
		},
		/**
		 * 发送验证码计时器
		 */
		sendYzm:function(){
			var i = 179;
			if(_Act.reg.SENYZM_FLAG) {
				_Act.reg.SENYZM_FLAG = false;
				$("#getYzm").attr("disabled",true);
				$("#getYzm").css("background-color", "#bebebe");
				$("#getYzm").html(i + "秒");
				var yzmInter = window.setInterval(function() {
					i--;
					$("#getYzm").html(i + "秒");
					if(i === 0) {
						$("#getYzm").attr("disabled",false);
						$("#getYzm").css("background-color", "#25b0f8");
						$("#getYzm").html("获取验证码");
						window.clearInterval(yzmInter);
						_Act.reg.SENYZM_FLAG = true;
					}
				}, 1000);
			}
		}
	},
	/**
	 * 忘记密码
	 */
	fPassw:{
		init:function(){
			_Act.fPassw._o();
		},
		/**
		 * 确定
		 */
		_o:function(){
			mui("body").on("tap","#forgetOk",function(){
				var _passW = $(".phone").val();
				//手机号为空
				if(_passW.length == 0){
					mui.toast("请输入手机号！");
				}else{
					regBtn();
				}
				
			});
			//发送验证码
			mui("body").on("tap","#sendYzm",function(){
				var _phone = $(".phone").val();
				if(_phone.length == 0){
					mui.toast("请输入手机号！");
				}else if(!(/^[1][3,4,5,7,8][0-9]{9}$/.test(_phone))){
					mui.toast("请输入正确的手机号！");
				}else{
					_comm.sendYzm($(this));
				}
				
			});
		}
	},
	/**
	 * 设置密码
	 */
	setPassw:{
		init:function(){
			_Act.setPassw._o();
		},
		/**
		 * 确定
		 */
		_o:function(){
			var indexs=0;
			mui("body").on("tap","#registOk",function(){
				/*var _passW = $(".passw").val();
				//密码为空
				if(_passW.length == 0){
					mui.toast("请输入手机号！");
				}*/
				 if(indexs==0){
   				  indexs++;
   				  registPhone();
				 }
			});
		}
	},
	
	/**
	 * 修改手机
	 */
	setPhone:{
		init:function(){
			_Act.setPhone._o();
		},
		SENYZM_FLAG:true,
		/**
		 * 确定
		 */
		_o:function(){
			mui("body").on("tap","#nextStep",function(){
				nextStep();
			});
			
			mui("body").on("tap","#sendYzm",function(){
				_comm.sendYzm($(this));
			});
			mui("body").on("tap","#setPhone",function(){
				setPhone();
			});
		}
	},
	/**
	 * 修改绑定手机 20170516
	 */
	setBindPhone:{
		init:function(){
			_Act.setBindPhone._o();
		},
		SENYZM_FLAG:true,
		/**
		 * 确定
		 */
		_o:function(){
			//发送验证码
			mui("body").on("tap","#sendYzm",function(){
				sendPhone();
			});
			//图形验证码弹窗
			mui("body").on("tap","#getYzm",function(){
				$(".img-yzm").val('');
				checkUserLoginNameSetBind();
			});
			mui("body").on("tap","#setBindPhone",function(){
				setBindPhone();
			});
		},
		/**
		 * 发送验证码计时器
		 */
		sendYzm:function(){
			var i = 179;
			if(_Act.reg.SENYZM_FLAG) {
				_Act.reg.SENYZM_FLAG = false;
				$("#getYzm").attr("disabled",true);
				$("#getYzm").css("background-color", "#bebebe");
				$("#getYzm").html(i + "秒");
				var yzmInter = window.setInterval(function() {
					i--;
					$("#getYzm").html(i + "秒");
					if(i === 0) {
						$("#getYzm").attr("disabled",false);
						$("#getYzm").css("background-color", "#25b0f8");
						$("#getYzm").html("获取验证码");
						window.clearInterval(yzmInter);
						_Act.reg.SENYZM_FLAG = true;
					}
				}, 1000);
			}
		}
	},
	/**
	 * 用户使用条款
	 */
	sytk:{
		init:function(){
			var f = _comm.getUrlParam("f");//区分从用户使用条款还是隐私权政策连接进入
			if("1" === f){
				$(".tabs a").removeClass("active");
				$(".tabs a:eq(0)").addClass("active");
				$(".tabs-content").hide();
				$("#sytk").show();
			}else{
				$(".tabs a").removeClass("active");
				$(".tabs a:eq(1)").addClass("active");
				$(".tabs-content").hide();
				$("#yszc").show();
			}
			//tabs切换
			mui(".tabs").on("tap","a",function(){
				$(".tabs a").removeClass("active");
				$(this).addClass("active");
				$(".tabs-content").hide();
				$("#"+ $(this).attr("data-id") +".tabs-content").show();
			});
		}
	},
	/**
	 * 网站介绍
	 */
	wzjs:{
		init:function(){
			//tabs切换
			mui(".tabs").on("tap","a",function(){
				$(".tabs a").removeClass("active");
				$(this).addClass("active");
				$(".tabs-content").hide();
				$("#"+ $(this).attr("data-id") +".tabs-content").show();
			});
		}
	},
	zbList:{
		init:function(){
			//专版详情入口
			mui(".tabs").on("tap","a",function(){
				$(".tabs a").removeClass("active");
				$(this).addClass("active");
				$(".tabs-content").hide();
				$("#"+ $(this).attr("data-id") +".tabs-content").show();
			});
		}
	},
	/**
	 * 找组织
	 */
	organization:{
		init:function(){
			mui('.mui-scroll-wrapper').scroll({
				indicators: true //是否显示滚动条
			});
			var f = _comm.getUrlParam("f");
			if(f){
				$("#sliderSegmentedControl a").removeClass("mui-active");
				$(".mui-control-content").removeClass("mui-active");
				if("fj" === f) {
					$("#sliderSegmentedControl a:eq(0)").addClass("mui-active");
					$("#fjOrg").addClass("mui-active");
				}
				if("xg" === f) {
					$("#sliderSegmentedControl a:eq(1)").addClass("mui-active");
					$("#xgOrg").addClass("mui-active");
				}
			}
		},
		/**
		 * 设置滚动区域高度
		 */
		setHeight:function(flag){
			var wH = $(window).height(),cH = 0;
			if("m" === flag)//周边组织
			cH = $("header").outerHeight() + $("#sliderSegmentedControl").outerHeight() + 35;
			if("soc" === flag)//我的社交
				cH = $("header").outerHeight() + $("#sliderSegmentedControl").outerHeight() + 107;
			if("s" === flag)//组织搜索
			cH = $("header").outerHeight() + $(".search-box").outerHeight() + 20;
			
			$(window).resize(function(){
				wH = $(window).height();
				$(".mui-control-content").css("height",(wH - cH) + "px");
			});
			$(".mui-control-content").css("height",(wH - cH) + "px");
		},
		search:function(){
			//组织类型模态框
			//取消
			mui(".act-popover").on("tap", ".cancel", function() {
				mui(".act-popover").popover("toggle");
			});
			//确定
			mui(".act-popover").on("tap", ".confirm", function() {
				var type = $("[type=radio]:checked + span").html();//选择的值
				$("#typeCode").val($("[name=org_type]:checked").val());
				if(type.length > 5) type = type.substr(0,5);
				$(".org-type span").html(type);//赋值
				mui(".act-popover").popover("toggle");
			});
			
			
		}
	},
	/**
	 * 活动详情
	 */
	activity:{
		init:function(){
			//显示时间地铁
			$("li.show-hidden").each(function(i,v){
				$(v).find(".time span:gt(0)").hide();
			});
			mui(".mui-table-view").on("tap","li.show-hidden",function(){
				$(this).on("tap",".time",function(e){
					e.stopPropagation();
				});
				if($(this).find(".icons-jt").hasClass("active")){
					$(this).find(".time span:gt(0)").hide();
					$(this).find(".icons-jt").removeClass("active");
				}else{
					$(this).find(".time span:gt(0)").show();
					$(this).find(".icons-jt").addClass("active");
				}
			});
			//分享遮罩关闭
			mui('body').on('tap', '#share', function() {
				$(this).hide();
			});
		},
		share:function(){
			$('#share').show();
		},
		/**
		 * 计时器 秒杀倒计时
		 * @param {String} time  时间和毫秒数都可【"2016/09/25 11:33:43"||"2016/09/25 11:33:43"||1474774423000】
		 * @param {String} id 时间对象容器id
 		 */
		countDown:function(time,id){
			var day_elem = $(id).find('.day');
			var hour_elem = $(id).find('.hour');
			var minute_elem = $(id).find('.minute');
			var second_elem = $(id).find('.second');
			var end_time = new Date(time).getTime(),//月份是实际月份-1
			sys_second = (end_time-new Date().getTime())/1000;
			var timer = setInterval(function(){
				if (sys_second > 1) {
					sys_second -= 1;
					var day = Math.floor((sys_second / 3600) / 24);
					var hour = Math.floor((sys_second / 3600) % 24);
					var minute = Math.floor((sys_second / 60) % 60);
					var second = Math.floor(sys_second % 60);
					if(day>99){
						day = "<i>"+day.toString().substr(0,1)+"</i><i>"+day.toString().substr(1,1)+"</i><i>"+day.toString().substr(2,1)+"</i>";
						$(day_elem).addClass("daybg");
					}else if(day>9&&day<100){
						day = "<i>"+day.toString().substr(0,1)+"</i><i>"+day.toString().substr(1,1)+"</i>";
					}
					else{
						day = "<i>0</i><i>" + day+"</i>";
					}
					day_elem && $(day_elem).html(day);//计算天
					if(hour>9)
					hour = "<i>"+hour.toString().substr(0,1)+"</i><i>"+hour.toString().substr(1,2)+"</i>";
					else
					hour = "<i>0</i><i>" + hour+"</i>";
					if(minute>9)
					minute = "<i>"+minute.toString().substr(0,1)+"</i><i>"+minute.toString().substr(1,2)+"</i>";
					else
					minute = "<i>0</i><i>" + minute+"</i>";
					if(second>9)
					second = "<i>"+second.toString().substr(0,1)+"</i><i>"+second.toString().substr(1,2)+"</i>";
					else
					second = "<i>0</i><i>" + second+"</i>";
					$(hour_elem).html(hour);//计算小时
					$(minute_elem).html(minute);//计算分钟
					$(second_elem).html(second);//计算秒杀
				} else { 
					clearInterval(timer);
				}
			}, 1000);
		}
	}
	
};
//分享统计
function shareCount(){
	
}